A framework for exploring unifying theories of empirical software engineering
نویسنده
چکیده
One of the reasons for the lack of rigor in software engineering compared to physical and behavioral sciences is that the theories that underpin our work, both as software engineers and as software engineering researchers, have not been given enough attention. To provide a step forward towards greater rigor, a framework has been created with which to explore theories of software engineering and software engineering research. This framework provides a simple theory modeling language and model calculus to explore informally described theories and to generate the results of composing modeled theories. To illustrate and evaluate this framework, a general theory about software engineering is presented and then two simple theories, D and E, proposed as the basis for laying out a unified theoretical foundation for software engineering and software engineering research. Software Engineering consists of two logical parts: design, and empirical evaluation (both terms used in their broadest senses). Theory D is the theoretical basis for the design part, and theory E is the theoretical basis for empirical evaluation. These two theories are then composed in various ways to lay out a space (a taxonomy, or ontology if you will) for software engineering and software engineering research. Finally, it is claimed that software engineering and software engineering research (both fully integrated with empirical evaluations) are models (in the logical sense) for these atomic and composed theories. To further evaluate the framework, examples are provided of modeling (implicit) theories found in a number of software engineering (theory) papers. The results of this research are 1) a scientific elegance in creating larger more complex theories out of simpler theories, 2) an elegant way of explaining the complexity of software engineering and software engineering research, and 3) a theory modeling language and model calculus for composing the resulting theoretical models.
منابع مشابه
A Unifying Theoretical Foundation for Software Engineering
The goal of this keynote paper is to argue for a unifying theoretical foundation for software engineering. I believe that one of the reasons for our lack of rigor compared to physical and behavioral sciences is that we have not given enough attention to the theories that underpin our work, both as software engineers and as software engineering researchers. I present my general theory about soft...
متن کاملUnifying Theories of Programming in Isabelle
This is a tutorial introduction to the two most basic theories in Hoare & He’s Unifying Theories of Programming and their mechanisation in the Isabelle interactive theorem prover. We describe the theories of relations and of designs (pre-postcondition pairs), interspersed with their formalisation in Isabelle and example mechanised proofs.
متن کاملA Sound Operational Semantics for Circus
The use of formal methods in software engineering considerably reduces the number of errors throughout system developments by enforcing a rigorous specification and verification before reaching a final implementation. We provide, on this paper, a full and sound Structural Operational Semantics for Circus, a formal notation that combines Z and CSP. Our work lifts the works of Freitas, Cavalcanti...
متن کاملA Formal Definition of Importance for Summarization
Research on summarization has mainly been driven by empirical approaches, crafting systems to perform well on standard datasets with the notion of information Importance remaining latent. We argue that establishing formal theories of Importance will advance our understanding of the task and further improve summarization systems. Therefore, we attempt a definition of several concepts: Redundancy...
متن کاملA Foundation for Empirical Software Engineering
The goal of this paper is to lay a foundation for rigorous empirical software engineering. I do this by introducing several theories and their models. I first present an abstract theory TM about theories and models and related processes. I then apply TM to itself, yielding MTM, a theory and model about TM. These two theories provide a unified approach to design disciplines. I then provide 4 mod...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- Sci. Comput. Program.
دوره 101 شماره
صفحات -
تاریخ انتشار 2015